<xi:include href="xml/gtkcombobox.xml" />
<xi:include href="xml/gtkcomboboxtext.xml" />
<xi:include href="xml/gtkmenu.xml" />
- <xi:include href="xml/gtktreemenu.xml" />
<xi:include href="xml/gtkmenubar.xml" />
<xi:include href="xml/gtkmenuitem.xml" />
<xi:include href="xml/gtkimagemenuitem.xml" />
gtk_color_selection_dialog_get_type
</SECTION>
-<SECTION>
-<FILE>gtktreemenu</FILE>
-<TITLE>GtkTreeMenu</TITLE>
-GtkTreeMenu
-GtkTreeMenuClass
-GtkTreeMenuHeaderFunc
-gtk_tree_menu_new
-gtk_tree_menu_new_with_area
-gtk_tree_menu_new_full
-gtk_tree_menu_set_model
-gtk_tree_menu_get_model
-gtk_tree_menu_set_root
-gtk_tree_menu_get_root
-gtk_tree_menu_get_tearoff
-gtk_tree_menu_set_tearoff
-gtk_tree_menu_get_wrap_width
-gtk_tree_menu_set_wrap_width
-gtk_tree_menu_get_row_span_column
-gtk_tree_menu_set_row_span_column
-gtk_tree_menu_get_column_span_column
-gtk_tree_menu_set_column_span_column
-gtk_tree_menu_get_row_separator_func
-gtk_tree_menu_set_row_separator_func
-gtk_tree_menu_get_header_func
-gtk_tree_menu_set_header_func
-<SUBSECTION Standard>
-GTK_TREE_MENU
-GTK_IS_TREE_MENU
-GTK_TYPE_TREE_MENU
-gtk_tree_menu_get_type
-GTK_TREE_MENU_CLASS
-GTK_IS_TREE_MENU_CLASS
-GTK_TREE_MENU_GET_CLASS
-GtkTreeMenuPrivate
-</SECTION>
-
<SECTION>
<FILE>gtkcombobox</FILE>
<TITLE>GtkComboBox</TITLE>
gtktoolshell.h \
gtktooltip.h \
gtktreednd.h \
- gtktreemenu.h \
gtktreemodel.h \
gtktreemodelfilter.h \
gtktreemodelsort.h \
gtktreeprivate.h \
gtkwidgetprivate.h \
gtkwindowprivate.h \
+ gtktreemenu.h \
$(gtk_clipboard_dnd_h_sources) \
$(gtk_appchooser_impl_h_sources)
#include <gtk/gtktooltip.h>
#include <gtk/gtktestutils.h>
#include <gtk/gtktreednd.h>
-#include <gtk/gtktreemenu.h>
#include <gtk/gtktreemodel.h>
#include <gtk/gtktreemodelfilter.h>
#include <gtk/gtktreemodelsort.h>
gtk_tree_iter_copy
gtk_tree_iter_free
gtk_tree_iter_get_type G_GNUC_CONST
-gtk_tree_menu_get_column_span_column
-gtk_tree_menu_get_header_func
-gtk_tree_menu_get_model
-gtk_tree_menu_get_root
-gtk_tree_menu_get_row_separator_func
-gtk_tree_menu_get_row_span_column
-gtk_tree_menu_get_tearoff
-gtk_tree_menu_get_type G_GNUC_CONST
-gtk_tree_menu_get_wrap_width
-gtk_tree_menu_new
-gtk_tree_menu_new_full
-gtk_tree_menu_new_with_area
-gtk_tree_menu_set_column_span_column
-gtk_tree_menu_set_header_func
-gtk_tree_menu_set_model
-gtk_tree_menu_set_root
-gtk_tree_menu_set_row_separator_func
-gtk_tree_menu_set_row_span_column
-gtk_tree_menu_set_tearoff
-gtk_tree_menu_set_wrap_width
gtk_tree_model_filter_clear_cache
gtk_tree_model_filter_convert_child_iter_to_iter
gtk_tree_model_filter_convert_child_path_to_path
* and #GtkCellAreaContext. A #GtkCellAreaContext can be provided to the
* #GtkCellView at construction time in order to keep the cellview in context
* of a group of cell views, this ensures that the renderers displayed will
- * be properly aligned with eachother (like the aligned cells of #GtkTreeMenu).
+ * be properly aligned with eachother (like the aligned cells in the menus
+ * of #GtkComboBox).
*
* #GtkCellView is #GtkOrientable in order to decide in which orientation
- * the underlying #GtkCellAreaContext should be allocated. Taking the #GtkTreeMenu
- * as an example, cellviews should be oriented horizontally if the menus are
+ * the underlying #GtkCellAreaContext should be allocated. Taking the #GtkComboBox
+ * menu as an example, cellviews should be oriented horizontally if the menus are
* listed top-to-bottom and thus all share the same width but may have separate
* individual heights (left-to-right menus should be allocated vertically since
* they all share the same height but may have variable widths).
* ensure the sizes and cell alignments match across all the views with
* the same context.
*
- * #GtkTreeMenu uses this to assign the same context to all cell views
+ * #GtkComboBox menus uses this to assign the same context to all cell views
* in the menu items for a single menu (each submenu creates it's own
* context since the size of each submenu does not depend on parent
* or sibling menus).
* @draw_sensitive: whether to draw all cells in a sensitive state.
*
* Sets whether @cell_view should draw all of it's
- * cells in a sensitive state, this is used by #GtkTreeMenu
+ * cells in a sensitive state, this is used by #GtkComboBox menus
* to ensure that rows with insensitive cells that contain
* children appear sensitive in the parent menu item.
*
combo_box);
/* create our funky menu */
- menu = gtk_tree_menu_new_with_area (priv->area);
+ menu = _gtk_tree_menu_new_with_area (priv->area);
gtk_widget_set_name (menu, "gtk-combobox-popup-menu");
- gtk_tree_menu_set_model (GTK_TREE_MENU (menu), priv->model);
+ _gtk_tree_menu_set_model (GTK_TREE_MENU (menu), priv->model);
- gtk_tree_menu_set_wrap_width (GTK_TREE_MENU (menu), priv->wrap_width);
- gtk_tree_menu_set_row_span_column (GTK_TREE_MENU (menu), priv->row_column);
- gtk_tree_menu_set_column_span_column (GTK_TREE_MENU (menu), priv->col_column);
- gtk_tree_menu_set_tearoff (GTK_TREE_MENU (menu),
- combo_box->priv->add_tearoffs);
+ _gtk_tree_menu_set_wrap_width (GTK_TREE_MENU (menu), priv->wrap_width);
+ _gtk_tree_menu_set_row_span_column (GTK_TREE_MENU (menu), priv->row_column);
+ _gtk_tree_menu_set_column_span_column (GTK_TREE_MENU (menu), priv->col_column);
+ _gtk_tree_menu_set_tearoff (GTK_TREE_MENU (menu),
+ combo_box->priv->add_tearoffs);
g_signal_connect (menu, "menu-activate",
G_CALLBACK (gtk_combo_box_menu_activate), combo_box);
/* Chain our row_separator_func through */
- gtk_tree_menu_set_row_separator_func (GTK_TREE_MENU (menu),
- (GtkTreeViewRowSeparatorFunc)gtk_combo_box_row_separator_func,
- combo_box, NULL);
+ _gtk_tree_menu_set_row_separator_func (GTK_TREE_MENU (menu),
+ (GtkTreeViewRowSeparatorFunc)gtk_combo_box_row_separator_func,
+ combo_box, NULL);
- gtk_tree_menu_set_header_func (GTK_TREE_MENU (menu),
- (GtkTreeMenuHeaderFunc)gtk_combo_box_header_func,
- combo_box, NULL);
+ _gtk_tree_menu_set_header_func (GTK_TREE_MENU (menu),
+ (GtkTreeMenuHeaderFunc)gtk_combo_box_header_func,
+ combo_box, NULL);
gtk_widget_set_name (menu, "gtk-combobox-popup-menu");
gtk_combo_box_check_appearance (combo_box);
if (GTK_IS_TREE_MENU (priv->popup_widget))
- gtk_tree_menu_set_wrap_width (GTK_TREE_MENU (priv->popup_widget), priv->wrap_width);
+ _gtk_tree_menu_set_wrap_width (GTK_TREE_MENU (priv->popup_widget), priv->wrap_width);
g_object_notify (G_OBJECT (combo_box), "wrap-width");
}
priv->row_column = row_span;
if (GTK_IS_TREE_MENU (priv->popup_widget))
- gtk_tree_menu_set_row_span_column (GTK_TREE_MENU (priv->popup_widget), priv->row_column);
+ _gtk_tree_menu_set_row_span_column (GTK_TREE_MENU (priv->popup_widget), priv->row_column);
g_object_notify (G_OBJECT (combo_box), "row-span-column");
}
priv->col_column = column_span;
if (GTK_IS_TREE_MENU (priv->popup_widget))
- gtk_tree_menu_set_column_span_column (GTK_TREE_MENU (priv->popup_widget), priv->col_column);
+ _gtk_tree_menu_set_column_span_column (GTK_TREE_MENU (priv->popup_widget), priv->col_column);
g_object_notify (G_OBJECT (combo_box), "column-span-column");
}
if (GTK_IS_TREE_MENU (combo_box->priv->popup_widget))
{
/* menu mode */
- gtk_tree_menu_set_model (GTK_TREE_MENU (combo_box->priv->popup_widget),
- combo_box->priv->model);
+ _gtk_tree_menu_set_model (GTK_TREE_MENU (combo_box->priv->popup_widget),
+ combo_box->priv->model);
}
if (combo_box->priv->cell_view)
if (GTK_IS_TREE_MENU (combo_box->priv->popup_widget))
{
- gtk_tree_menu_set_model (GTK_TREE_MENU (combo_box->priv->popup_widget), NULL);
- gtk_tree_menu_set_model (GTK_TREE_MENU (combo_box->priv->popup_widget), combo_box->priv->model);
+ _gtk_tree_menu_set_model (GTK_TREE_MENU (combo_box->priv->popup_widget), NULL);
+ _gtk_tree_menu_set_model (GTK_TREE_MENU (combo_box->priv->popup_widget), combo_box->priv->model);
}
gtk_widget_queue_draw (GTK_WIDGET (combo_box));
static guint tree_menu_signals[N_SIGNALS] = { 0 };
static GQuark tree_menu_path_quark = 0;
-G_DEFINE_TYPE_WITH_CODE (GtkTreeMenu, gtk_tree_menu, GTK_TYPE_MENU,
+G_DEFINE_TYPE_WITH_CODE (GtkTreeMenu, _gtk_tree_menu, GTK_TYPE_MENU,
G_IMPLEMENT_INTERFACE (GTK_TYPE_CELL_LAYOUT,
gtk_tree_menu_cell_layout_init));
static void
-gtk_tree_menu_init (GtkTreeMenu *menu)
+_gtk_tree_menu_init (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
static void
-gtk_tree_menu_class_init (GtkTreeMenuClass *class)
+_gtk_tree_menu_class_init (GtkTreeMenuClass *class)
{
GObjectClass *object_class = G_OBJECT_CLASS (class);
GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (class);
GtkTreeMenu *menu;
GtkTreeMenuPrivate *priv;
- object = G_OBJECT_CLASS (gtk_tree_menu_parent_class)->constructor
+ object = G_OBJECT_CLASS (_gtk_tree_menu_parent_class)->constructor
(type, n_construct_properties, construct_properties);
menu = GTK_TREE_MENU (object);
menu = GTK_TREE_MENU (object);
priv = menu->priv;
- gtk_tree_menu_set_model (menu, NULL);
+ _gtk_tree_menu_set_model (menu, NULL);
gtk_tree_menu_set_area (menu, NULL);
if (priv->context)
priv->size_changed_id = 0;
}
- G_OBJECT_CLASS (gtk_tree_menu_parent_class)->dispose (object);
+ G_OBJECT_CLASS (_gtk_tree_menu_parent_class)->dispose (object);
}
static void
menu = GTK_TREE_MENU (object);
priv = menu->priv;
- gtk_tree_menu_set_row_separator_func (menu, NULL, NULL, NULL);
- gtk_tree_menu_set_header_func (menu, NULL, NULL, NULL);
+ _gtk_tree_menu_set_row_separator_func (menu, NULL, NULL, NULL);
+ _gtk_tree_menu_set_header_func (menu, NULL, NULL, NULL);
if (priv->root)
gtk_tree_row_reference_free (priv->root);
- G_OBJECT_CLASS (gtk_tree_menu_parent_class)->finalize (object);
+ G_OBJECT_CLASS (_gtk_tree_menu_parent_class)->finalize (object);
}
static void
switch (prop_id)
{
case PROP_MODEL:
- gtk_tree_menu_set_model (menu, g_value_get_object (value));
+ _gtk_tree_menu_set_model (menu, g_value_get_object (value));
break;
case PROP_ROOT:
- gtk_tree_menu_set_root (menu, g_value_get_boxed (value));
+ _gtk_tree_menu_set_root (menu, g_value_get_boxed (value));
break;
case PROP_CELL_AREA:
break;
case PROP_TEAROFF:
- gtk_tree_menu_set_tearoff (menu, g_value_get_boolean (value));
+ _gtk_tree_menu_set_tearoff (menu, g_value_get_boolean (value));
break;
case PROP_WRAP_WIDTH:
- gtk_tree_menu_set_wrap_width (menu, g_value_get_int (value));
+ _gtk_tree_menu_set_wrap_width (menu, g_value_get_int (value));
break;
case PROP_ROW_SPAN_COL:
- gtk_tree_menu_set_row_span_column (menu, g_value_get_int (value));
+ _gtk_tree_menu_set_row_span_column (menu, g_value_get_int (value));
break;
case PROP_COL_SPAN_COL:
- gtk_tree_menu_set_column_span_column (menu, g_value_get_int (value));
+ _gtk_tree_menu_set_column_span_column (menu, g_value_get_int (value));
break;
default:
sync_reserve_submenu_size (menu);
- GTK_WIDGET_CLASS (gtk_tree_menu_parent_class)->get_preferred_width (widget, minimum_size, natural_size);
+ GTK_WIDGET_CLASS (_gtk_tree_menu_parent_class)->get_preferred_width (widget, minimum_size, natural_size);
g_signal_handler_unblock (priv->context, priv->size_changed_id);
}
sync_reserve_submenu_size (menu);
- GTK_WIDGET_CLASS (gtk_tree_menu_parent_class)->get_preferred_height (widget, minimum_size, natural_size);
+ GTK_WIDGET_CLASS (_gtk_tree_menu_parent_class)->get_preferred_height (widget, minimum_size, natural_size);
g_signal_handler_unblock (priv->context, priv->size_changed_id);
}
view = gtk_bin_get_child (GTK_BIN (item));
gtk_cell_view_set_draw_sensitive (GTK_CELL_VIEW (view), TRUE);
- submenu = gtk_tree_menu_new_with_area (priv->area);
+ submenu = _gtk_tree_menu_new_with_area (priv->area);
- gtk_tree_menu_set_row_separator_func (GTK_TREE_MENU (submenu),
- priv->row_separator_func,
- priv->row_separator_data,
- priv->row_separator_destroy);
- gtk_tree_menu_set_header_func (GTK_TREE_MENU (submenu),
- priv->header_func,
- priv->header_data,
- priv->header_destroy);
+ _gtk_tree_menu_set_row_separator_func (GTK_TREE_MENU (submenu),
+ priv->row_separator_func,
+ priv->row_separator_data,
+ priv->row_separator_destroy);
+ _gtk_tree_menu_set_header_func (GTK_TREE_MENU (submenu),
+ priv->header_func,
+ priv->header_data,
+ priv->header_destroy);
- gtk_tree_menu_set_wrap_width (GTK_TREE_MENU (submenu), priv->wrap_width);
- gtk_tree_menu_set_row_span_column (GTK_TREE_MENU (submenu), priv->row_span_col);
- gtk_tree_menu_set_column_span_column (GTK_TREE_MENU (submenu), priv->col_span_col);
+ _gtk_tree_menu_set_wrap_width (GTK_TREE_MENU (submenu), priv->wrap_width);
+ _gtk_tree_menu_set_row_span_column (GTK_TREE_MENU (submenu), priv->row_span_col);
+ _gtk_tree_menu_set_column_span_column (GTK_TREE_MENU (submenu), priv->col_span_col);
gtk_tree_menu_set_model_internal (GTK_TREE_MENU (submenu), priv->model);
- gtk_tree_menu_set_root (GTK_TREE_MENU (submenu), path);
+ _gtk_tree_menu_set_root (GTK_TREE_MENU (submenu), path);
gtk_menu_item_set_submenu (GTK_MENU_ITEM (item), submenu);
g_signal_connect (submenu, "menu-activate",
****************************************************************/
/**
- * gtk_tree_menu_new:
+ * _gtk_tree_menu_new:
*
* Creates a new #GtkTreeMenu.
*
* Since: 3.0
*/
GtkWidget *
-gtk_tree_menu_new (void)
+_gtk_tree_menu_new (void)
{
return (GtkWidget *)g_object_new (GTK_TYPE_TREE_MENU, NULL);
}
/**
- * gtk_tree_menu_new_with_area:
+ * _gtk_tree_menu_new_with_area:
* @area: the #GtkCellArea to use to render cells in the menu
*
* Creates a new #GtkTreeMenu using @area to render it's cells.
* Since: 3.0
*/
GtkWidget *
-gtk_tree_menu_new_with_area (GtkCellArea *area)
+_gtk_tree_menu_new_with_area (GtkCellArea *area)
{
return (GtkWidget *)g_object_new (GTK_TYPE_TREE_MENU,
"cell-area", area,
}
/**
- * gtk_tree_menu_new_full:
+ * _gtk_tree_menu_new_full:
* @area: (allow-none): the #GtkCellArea to use to render cells in the menu, or %NULL.
* @model: (allow-none): the #GtkTreeModel to build the menu heirarchy from, or %NULL.
* @root: (allow-none): the #GtkTreePath indicating the root row for this menu, or %NULL.
* Since: 3.0
*/
GtkWidget *
-gtk_tree_menu_new_full (GtkCellArea *area,
- GtkTreeModel *model,
- GtkTreePath *root)
+_gtk_tree_menu_new_full (GtkCellArea *area,
+ GtkTreeModel *model,
+ GtkTreePath *root)
{
return (GtkWidget *)g_object_new (GTK_TYPE_TREE_MENU,
"cell-area", area,
}
/**
- * gtk_tree_menu_set_model:
+ * _gtk_tree_menu_set_model:
* @menu: a #GtkTreeMenu
* @model: (allow-none): the #GtkTreeModel to build the menu hierarchy from, or %NULL.
*
* Since: 3.0
*/
void
-gtk_tree_menu_set_model (GtkTreeMenu *menu,
- GtkTreeModel *model)
+_gtk_tree_menu_set_model (GtkTreeMenu *menu,
+ GtkTreeModel *model)
{
g_return_if_fail (GTK_IS_TREE_MENU (menu));
g_return_if_fail (model == NULL || GTK_IS_TREE_MODEL (model));
}
/**
- * gtk_tree_menu_get_model:
+ * _gtk_tree_menu_get_model:
* @menu: a #GtkTreeMenu
*
* Gets the @model currently used for the menu heirarhcy.
* Since: 3.0
*/
GtkTreeModel *
-gtk_tree_menu_get_model (GtkTreeMenu *menu)
+_gtk_tree_menu_get_model (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_root:
+ * _gtk_tree_menu_set_root:
* @menu: a #GtkTreeMenu
* @path: (allow-none): the #GtkTreePath which is the root of @menu, or %NULL.
*
* Since: 3.0
*/
void
-gtk_tree_menu_set_root (GtkTreeMenu *menu,
- GtkTreePath *path)
+_gtk_tree_menu_set_root (GtkTreeMenu *menu,
+ GtkTreePath *path)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_root:
+ * _gtk_tree_menu_get_root:
* @menu: a #GtkTreeMenu
*
* Gets the @root path for @menu's hierarchy, or returns %NULL if @menu
* Since: 3.0
*/
GtkTreePath *
-gtk_tree_menu_get_root (GtkTreeMenu *menu)
+_gtk_tree_menu_get_root (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_tearoff:
+ * _gtk_tree_menu_get_tearoff:
* @menu: a #GtkTreeMenu
*
* Gets whether this menu is build with a leading tearoff menu item.
* Since: 3.0
*/
gboolean
-gtk_tree_menu_get_tearoff (GtkTreeMenu *menu)
+_gtk_tree_menu_get_tearoff (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_tearoff:
+ * _gtk_tree_menu_set_tearoff:
* @menu: a #GtkTreeMenu
* @tearoff: whether the menu should have a leading tearoff menu item.
*
* Since: 3.0
*/
void
-gtk_tree_menu_set_tearoff (GtkTreeMenu *menu,
- gboolean tearoff)
+_gtk_tree_menu_set_tearoff (GtkTreeMenu *menu,
+ gboolean tearoff)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_wrap_width:
+ * _gtk_tree_menu_get_wrap_width:
* @menu: a #GtkTreeMenu
*
* Gets the wrap width which is used to determine the number of columns
* Since: 3.0
*/
gint
-gtk_tree_menu_get_wrap_width (GtkTreeMenu *menu)
+_gtk_tree_menu_get_wrap_width (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_wrap_width:
+ * _gtk_tree_menu_set_wrap_width:
* @menu: a #GtkTreeMenu
* @width: the wrap width
*
* Since: 3.0
*/
void
-gtk_tree_menu_set_wrap_width (GtkTreeMenu *menu,
- gint width)
+_gtk_tree_menu_set_wrap_width (GtkTreeMenu *menu,
+ gint width)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_row_span_column:
+ * _gtk_tree_menu_get_row_span_column:
* @menu: a #GtkTreeMenu
*
* Gets the column with row span information for @menu.
* Since: 3.0
*/
gint
-gtk_tree_menu_get_row_span_column (GtkTreeMenu *menu)
+_gtk_tree_menu_get_row_span_column (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_row_span_column:
+ * _gtk_tree_menu_set_row_span_column:
* @menu: a #GtkTreeMenu
* @row_span: the column in the model to fetch the row span for a given menu item.
*
* Since: 3.0
*/
void
-gtk_tree_menu_set_row_span_column (GtkTreeMenu *menu,
- gint row_span)
+_gtk_tree_menu_set_row_span_column (GtkTreeMenu *menu,
+ gint row_span)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_column_span_column:
+ * _gtk_tree_menu_get_column_span_column:
* @menu: a #GtkTreeMenu
*
* Gets the column with column span information for @menu.
* Since: 3.0
*/
gint
-gtk_tree_menu_get_column_span_column (GtkTreeMenu *menu)
+_gtk_tree_menu_get_column_span_column (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_column_span_column:
+ * _gtk_tree_menu_set_column_span_column:
* @menu: a #GtkTreeMenu
* @column_span: the column in the model to fetch the column span for a given menu item.
*
* Since: 3.0
*/
void
-gtk_tree_menu_set_column_span_column (GtkTreeMenu *menu,
- gint column_span)
+_gtk_tree_menu_set_column_span_column (GtkTreeMenu *menu,
+ gint column_span)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_row_separator_func:
+ * _gtk_tree_menu_get_row_separator_func:
* @menu: a #GtkTreeMenu
*
* Gets the current #GtkTreeViewRowSeparatorFunc separator function.
* Since: 3.0
*/
GtkTreeViewRowSeparatorFunc
-gtk_tree_menu_get_row_separator_func (GtkTreeMenu *menu)
+_gtk_tree_menu_get_row_separator_func (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_row_separator_func:
+ * _gtk_tree_menu_set_row_separator_func:
* @menu: a #GtkTreeMenu
* @func: (allow-none): a #GtkTreeViewRowSeparatorFunc, or %NULL to unset the separator function.
* @data: (allow-none): user data to pass to @func, or %NULL
* Since: 3.0
*/
void
-gtk_tree_menu_set_row_separator_func (GtkTreeMenu *menu,
- GtkTreeViewRowSeparatorFunc func,
- gpointer data,
- GDestroyNotify destroy)
+_gtk_tree_menu_set_row_separator_func (GtkTreeMenu *menu,
+ GtkTreeViewRowSeparatorFunc func,
+ gpointer data,
+ GDestroyNotify destroy)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_get_header_func:
+ * _gtk_tree_menu_get_header_func:
* @menu: a #GtkTreeMenu
*
* Gets the current #GtkTreeMenuHeaderFunc header function.
* Since: 3.0
*/
GtkTreeMenuHeaderFunc
-gtk_tree_menu_get_header_func (GtkTreeMenu *menu)
+_gtk_tree_menu_get_header_func (GtkTreeMenu *menu)
{
GtkTreeMenuPrivate *priv;
}
/**
- * gtk_tree_menu_set_header_func:
+ * _gtk_tree_menu_set_header_func:
* @menu: a #GtkTreeMenu
* @func: (allow-none): a #GtkTreeMenuHeaderFunc, or %NULL to unset the header function.
* @data: (allow-none): user data to pass to @func, or %NULL
* Since: 3.0
*/
void
-gtk_tree_menu_set_header_func (GtkTreeMenu *menu,
- GtkTreeMenuHeaderFunc func,
- gpointer data,
- GDestroyNotify destroy)
+_gtk_tree_menu_set_header_func (GtkTreeMenu *menu,
+ GtkTreeMenuHeaderFunc func,
+ gpointer data,
+ GDestroyNotify destroy)
{
GtkTreeMenuPrivate *priv;
G_BEGIN_DECLS
-#define GTK_TYPE_TREE_MENU (gtk_tree_menu_get_type ())
+#define GTK_TYPE_TREE_MENU (_gtk_tree_menu_get_type ())
#define GTK_TREE_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TREE_MENU, GtkTreeMenu))
#define GTK_TREE_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_TREE_MENU, GtkTreeMenuClass))
#define GTK_IS_TREE_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TREE_MENU))
void (*_gtk_reserved6) (void);
};
-GType gtk_tree_menu_get_type (void) G_GNUC_CONST;
-
-GtkWidget *gtk_tree_menu_new (void);
-GtkWidget *gtk_tree_menu_new_with_area (GtkCellArea *area);
-GtkWidget *gtk_tree_menu_new_full (GtkCellArea *area,
- GtkTreeModel *model,
- GtkTreePath *root);
-void gtk_tree_menu_set_model (GtkTreeMenu *menu,
- GtkTreeModel *model);
-GtkTreeModel *gtk_tree_menu_get_model (GtkTreeMenu *menu);
-void gtk_tree_menu_set_root (GtkTreeMenu *menu,
- GtkTreePath *path);
-GtkTreePath *gtk_tree_menu_get_root (GtkTreeMenu *menu);
-gboolean gtk_tree_menu_get_tearoff (GtkTreeMenu *menu);
-void gtk_tree_menu_set_tearoff (GtkTreeMenu *menu,
- gboolean tearoff);
-gint gtk_tree_menu_get_wrap_width (GtkTreeMenu *menu);
-void gtk_tree_menu_set_wrap_width (GtkTreeMenu *menu,
- gint width);
-gint gtk_tree_menu_get_row_span_column (GtkTreeMenu *menu);
-void gtk_tree_menu_set_row_span_column (GtkTreeMenu *menu,
- gint row_span);
-gint gtk_tree_menu_get_column_span_column (GtkTreeMenu *menu);
-void gtk_tree_menu_set_column_span_column (GtkTreeMenu *menu,
- gint column_span);
-
-GtkTreeViewRowSeparatorFunc gtk_tree_menu_get_row_separator_func (GtkTreeMenu *menu);
-void gtk_tree_menu_set_row_separator_func (GtkTreeMenu *menu,
- GtkTreeViewRowSeparatorFunc func,
- gpointer data,
- GDestroyNotify destroy);
-
-GtkTreeMenuHeaderFunc gtk_tree_menu_get_header_func (GtkTreeMenu *menu);
-void gtk_tree_menu_set_header_func (GtkTreeMenu *menu,
- GtkTreeMenuHeaderFunc func,
- gpointer data,
- GDestroyNotify destroy);
+GType _gtk_tree_menu_get_type (void) G_GNUC_CONST;
+
+GtkWidget *_gtk_tree_menu_new (void);
+GtkWidget *_gtk_tree_menu_new_with_area (GtkCellArea *area);
+GtkWidget *_gtk_tree_menu_new_full (GtkCellArea *area,
+ GtkTreeModel *model,
+ GtkTreePath *root);
+void _gtk_tree_menu_set_model (GtkTreeMenu *menu,
+ GtkTreeModel *model);
+GtkTreeModel *_gtk_tree_menu_get_model (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_root (GtkTreeMenu *menu,
+ GtkTreePath *path);
+GtkTreePath *_gtk_tree_menu_get_root (GtkTreeMenu *menu);
+gboolean _gtk_tree_menu_get_tearoff (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_tearoff (GtkTreeMenu *menu,
+ gboolean tearoff);
+gint _gtk_tree_menu_get_wrap_width (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_wrap_width (GtkTreeMenu *menu,
+ gint width);
+gint _gtk_tree_menu_get_row_span_column (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_row_span_column (GtkTreeMenu *menu,
+ gint row_span);
+gint _gtk_tree_menu_get_column_span_column (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_column_span_column (GtkTreeMenu *menu,
+ gint column_span);
+
+GtkTreeViewRowSeparatorFunc _gtk_tree_menu_get_row_separator_func (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_row_separator_func (GtkTreeMenu *menu,
+ GtkTreeViewRowSeparatorFunc func,
+ gpointer data,
+ GDestroyNotify destroy);
+
+GtkTreeMenuHeaderFunc _gtk_tree_menu_get_header_func (GtkTreeMenu *menu);
+void _gtk_tree_menu_set_header_func (GtkTreeMenu *menu,
+ GtkTreeMenuHeaderFunc func,
+ gpointer data,
+ GDestroyNotify destroy);
G_END_DECLS
/*******************************************************
* Grid Test *
*******************************************************/
+
+#if _GTK_TREE_MENU_WAS_A_PUBLIC_CLASS_
static GdkPixbuf *
create_color_pixbuf (const char *color)
{
return menu;
}
+#endif
/*******************************************************
* Simple Test *
return (GtkTreeModel *)store;
}
-static GtkWidget *
-simple_tree_menu (void)
+static GtkCellArea *
+create_cell_area (void)
{
- GtkTreeModel *model;
- GtkWidget *menu;
GtkCellArea *area;
GtkCellRenderer *renderer;
- model = simple_tree_model ();
-
- menu = gtk_tree_menu_new ();
- gtk_tree_menu_set_model (GTK_TREE_MENU (menu), model);
- gtk_tree_menu_set_root (GTK_TREE_MENU (menu), NULL);
-
- area = gtk_cell_layout_get_area (GTK_CELL_LAYOUT (menu));
+ area = gtk_cell_area_box_new ();
cell_1 = renderer = gtk_cell_renderer_text_new ();
gtk_cell_area_box_pack_start (GTK_CELL_AREA_BOX (area), renderer, FALSE, FALSE);
gtk_cell_area_box_pack_start (GTK_CELL_AREA_BOX (area), renderer, FALSE, TRUE);
gtk_cell_area_attribute_connect (area, renderer, "text", SIMPLE_COLUMN_DESCRIPTION);
+ return area;
+}
+
+#if _GTK_TREE_MENU_WAS_A_PUBLIC_CLASS_
+static GtkWidget *
+simple_tree_menu (GtkCellArea *area)
+{
+ GtkTreeModel *model;
+ GtkWidget *menu;
+
+ model = simple_tree_model ();
+
+ menu = gtk_tree_menu_new_with_area (area);
+ gtk_tree_menu_set_model (GTK_TREE_MENU (menu), model);
+
return menu;
}
+#endif
static void
orientation_changed (GtkComboBox *combo,
gtk_cell_area_cell_set (area, cell_3, "expand", expand, NULL);
}
+gboolean
+enable_submenu_headers (GtkTreeModel *model,
+ GtkTreeIter *iter,
+ gpointer data)
+{
+ return TRUE;
+}
+
+
+#if _GTK_TREE_MENU_WAS_A_PUBLIC_CLASS_
static void
menu_activated_cb (GtkTreeMenu *menu,
const gchar *path,
g_free (row_name);
}
-gboolean
-enable_submenu_headers (GtkTreeModel *model,
- GtkTreeIter *iter,
- gpointer data)
-{
- return TRUE;
-}
-
-
static void
submenu_headers_toggled (GtkToggleButton *toggle,
GtkTreeMenu *menu)
{
gtk_tree_menu_set_tearoff (menu, gtk_toggle_button_get_active (toggle));
}
+#endif
static void
tree_menu (void)
GtkWidget *window, *widget;
GtkWidget *menu, *menubar, *vbox, *menuitem;
GtkCellArea *area;
+ GtkTreeModel *store;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
menubar = gtk_menu_bar_new ();
gtk_widget_show (menubar);
+ store = simple_tree_model ();
+ area = create_cell_area ();
+
+#if _GTK_TREE_MENU_WAS_A_PUBLIC_CLASS_
menuitem = gtk_menu_item_new_with_label ("Grid");
menu = create_menu_grid_demo ();
gtk_widget_show (menu);
g_signal_connect (menu, "menu-activate", G_CALLBACK (menu_activated_cb), NULL);
gtk_box_pack_start (GTK_BOX (vbox), menubar, FALSE, FALSE, 0);
+#endif
/* Add a combo box with the same menu ! */
- area = gtk_cell_layout_get_area (GTK_CELL_LAYOUT (menu));
- widget = g_object_new (GTK_TYPE_COMBO_BOX,
- "cell-area", area,
- "model", gtk_tree_menu_get_model (GTK_TREE_MENU (menu)),
- NULL);
+ widget = gtk_combo_box_new_with_area (area);
+ gtk_combo_box_set_model (GTK_COMBO_BOX (widget), store);
gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0);
gtk_widget_show (widget);
gtk_box_pack_end (GTK_BOX (vbox), widget, FALSE, FALSE, 0);
g_signal_connect (G_OBJECT (widget), "toggled",
G_CALLBACK (expand_cell_3_toggled), area);
+#if _GTK_TREE_MENU_WAS_A_PUBLIC_CLASS_
widget = gtk_check_button_new_with_label ("Submenu Headers");
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), FALSE);
gtk_widget_show (widget);
g_signal_connect (G_OBJECT (widget), "toggled",
G_CALLBACK (tearoff_toggled), menu);
+#endif
gtk_container_add (GTK_CONTAINER (window), vbox);